<?xml version="1.0" encoding="UTF-8"?>
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ali="http://www.niso.org/schemas/ali/1.0/" article-type="research-article" dtd-version="1.2" xml:lang="en">
  <front>
    <journal-meta>
      <journal-id journal-id-type="issn">1561-5405</journal-id>
	    <journal-id journal-id-type="doi">10.24151/1561-5405</journal-id>	  
      <journal-id journal-id-type="publisher-id">Proceedings of Universities. Electronics</journal-id>
      <journal-title-group>
        <journal-title xml:lang="en">Scientifical and technical journal "Proceedings of Universities. Electronics"</journal-title>
        <trans-title-group xml:lang="ru">
          <trans-title>Научно-технический журнал «Известия высших учебных заведений. Электроника»</trans-title>
        </trans-title-group>        
      </journal-title-group>      
      <issn publication-format="print">1561-5405</issn>
      <issn publication-format="online">2587-9960</issn>
      <publisher>
        <publisher-name xml:lang="en">National Research University of Electronic Technology</publisher-name>
        <publisher-name xml:lang="ru">Национальный исследовательский университет "Московский институт электронной техники"</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>                                    
      
    <article-id pub-id-type="doi">10.24151/1561-5405-2025-30-1-107-116</article-id><article-id pub-id-type="risc">GCXUTX</article-id><article-id pub-id-type="udk">004.4.021</article-id><article-categories><subj-group><subject>Информационно-коммуникационные технологии</subject></subj-group></article-categories><title-group><article-title xml:lang="en">Improving the performance of the debugging server by optimizing the command decryption function</article-title><trans-title-group xml:lang="ru"><trans-title>Повышение производительности отладочного сервера за счет оптимизации функции дешифрации команд</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author"><string-name xml:lang="ru">Гаврилова Дарья Александровна</string-name><name-alternatives><name xml:lang="ru"><surname>Гаврилова</surname><given-names>Дарья Александровна</given-names></name><name xml:lang="en"><surname>Gavrilova</surname><given-names>Daria A.</given-names></name></name-alternatives><string-name xml:lang="en">Daria A. Gavrilova</string-name><xref ref-type="aff" rid="AFF-1"/></contrib><aff id="AFF-1" xml:lang="ru">Национальный исследовательский университет «МИЭТ» (Россия, 124498, г. Москва, г. Зеленоград, пл. Шокина, 1); АО «НИИ «Субмикрон» (Россия, 124460, г. Москва, г. Зеленоград, Георгиевский пр-т, 5, стр. 2)</aff></contrib-group><pub-date iso-8601-date="2025-09-04" date-type="pub" publication-format="electronic"><day>04</day><month>09</month><year>2025</year></pub-date><volume>Том. 30 №1</volume><issue>1</issue><fpage>107</fpage><lpage>116</lpage><self-uri>http://ivuz-e.ru/issues/Том 30 №1/povyshenie_proizvoditelnosti_otladochnogo_servera_za_schet_optimizatsii_funktsii_deshifratsii_komand/</self-uri><abstract xml:lang="en"><p>Embedded systems that combine hardware and software components play a key role in ensuring the smooth operation of various devices and mechanisms. Virtual prototypes of embedded systems are actively used to improve the quality of development. Debugging and testing embedded systems software on virtual prototypes requires the creation of a debugging server. During testing, the debugging server processes a large number of requests from the operator or from the test script. Due to the growing number of devices being tested and the complexity of test scenarios, server response time is becoming critical. In this work, the optimization of the algorithm for decrypting debugging commands using linear and binary searches is considered. Main focus is on the implementation of a two-level command processing structure, which reduces the processing time of incoming requests. The productivity of software solutions was studied using experimental methods. To analyze the performance of the proposed method, experiments were conducted with measuring the execution time of command processing functions. It has been demonstrated that this approach allows significant improvement of the performance of command decryption function. In particular, the function execution time was reduced from 10.6 to 4.8 μs. The methods for algorithms performance measuring are described. The research results have shown that it is advisable to use the proposed solution to improve the performance of the debugging server.</p></abstract><trans-abstract xml:lang="ru"><p>Встраиваемые системы, объединяющие аппаратную и программную составляющие, обеспечивают бесперебойную работу различных приборов и механизмов. Для повышения качества разработки активно применяются виртуальные прототипы встраиваемых систем. Отладка и тестирование программного обеспечения встраиваемых систем на виртуальных прототипах требуют создания отладочного сервера. При тестировании отладочный сервер обрабатывает большое количество запросов от оператора или от тестового сценария. В связи с ростом числа тестируемых устройств и усложнением тестовых сценариев время отклика сервера становится критичным. В работе рассмотрена оптимизация алгоритма дешифрации команд отладки с помощью линейного и бинарного поисков. Основное внимание уделено внедрению двухуровневой структуры обработки команд, обеспечивающей уменьшение времени обработки поступающих запросов. Исследована производительность программных решений с использованием экспериментальных методов. Для анализа эффективности предложенного метода проведены эксперименты с измерением времени выполнения функций обработки команд. Показано, что такой подход позволяет значительно повысить производительность функции дешифрации команд, в частности время выполнения функции уменьшилось с 10,6 до 4,8 мкс. Описаны методы измерения производительности алгоритмов. Результаты исследований показали целесообразность предложенного решения для повышения производительности отладочного сервера.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>встраиваемые системы</kwd><kwd>отладочный сервер</kwd><kwd>линейный поиск</kwd><kwd>бинарный поиск</kwd><kwd>стандарт GNU Debugger</kwd><kwd>виртуальный прототип</kwd></kwd-group><kwd-group xml:lang="en"><kwd>embedded systems</kwd><kwd>debugging server</kwd><kwd>linear search</kwd><kwd>binary search</kwd><kwd>GNU Debugger</kwd><kwd>virtual prototype</kwd></kwd-group><funding-group/></article-meta>
  </front>
  <body/>
  <back>
    <ref-list><ref id="B1"><label>1.</label><mixed-citation xml:lang="ru">Marwedel P. Embedded system design: Embedded systems foundations of cyber-physical systems. 2nd ed. Dordrecht: Springer, 2010. XXI, 400 p. DOI: 10.1007/978-94-007-0257-8</mixed-citation></ref><ref id="B2"><label>2.</label><mixed-citation xml:lang="ru">Гаврилова Д. А. Обзор языков описания аппаратуры для разработки виртуальных прототипов встраиваемых систем // Научный аспект. 2023. Т. 1. № 3. С. 115-121. EDN: RHOCHW</mixed-citation></ref><ref id="B3"><label>4.</label><mixed-citation xml:lang="ru">Gavrilova D. A. Review of hardware description languages for the development of virtual prototypes of</mixed-citation></ref><ref id="B4"><label>5.</label><mixed-citation xml:lang="ru">embedded systems. Nauchnyy aspekt, 2023, vol. 1, no. 3, pp. 115–121. (In Russian).</mixed-citation></ref><ref id="B5"><label>3.</label><mixed-citation xml:lang="ru">Bailey B., Martin G., Piziali A. ESL design and verification: A prescription for electronic system level methodology. Cambridge, MA: Morgan Kaufmann; Elsevier, 2007. 488 p.</mixed-citation></ref><ref id="B6"><label>4.</label><mixed-citation xml:lang="ru">Stallman R., Pesch R., Shebs S. Debugging with GDB: The GNU source-level debugger. Boston: 12th Media Services, 2018. 826 p.</mixed-citation></ref><ref id="B7"><label>5.</label><mixed-citation xml:lang="ru">Qt 5.13 // Qt 5.13 Documentation Archives [Электронный ресурс]. URL: https://doc.qt.io/archives/qt-5.13/index.html (дата обращения: 11.12.2024).</mixed-citation></ref><ref id="B8"><label>6.</label><mixed-citation xml:lang="ru">Уильямс Э. C++. Практика многопоточного программирования / пер. с англ. Н. Вильчинского. 2-е изд. СПб.: Питер, 2020. 640 с.</mixed-citation></ref><ref id="B9"><label>10.</label><mixed-citation xml:lang="ru">Williams A. C++. Concurrency in action. 2nd ed. Shelter Island, NY, Manning, 2019. 592 p.</mixed-citation></ref><ref id="B10"><label>7.</label><mixed-citation xml:lang="ru">Стивенс Р. Алгоритмы: Теория и практическое применение / пер. с англ. В. Кириленко, Р. Волошко. 2-е изд. М.: Эксмо, 2021. 544 с.</mixed-citation></ref><ref id="B11"><label>12.</label><mixed-citation xml:lang="ru">Stephens R. Essential algorithms: A practical approach to computer algorithms using Python and C#.</mixed-citation></ref><ref id="B12"><label>13.</label><mixed-citation xml:lang="ru">2nd ed. Hoboken, NJ, Wiley, 2019. 800 p.</mixed-citation></ref><ref id="B13"><label>8.</label><mixed-citation xml:lang="ru">Ла Рокка М. Продвинутые алгоритмы и структуры данных / пер. с англ. Л. Киселевой. СПб.: Питер, 2024. 848 с.</mixed-citation></ref><ref id="B14"><label>15.</label><mixed-citation xml:lang="ru">La Rocca M. Advanced algorithms and data structures. Shelter Island, NY, Manning, 2021. 768 p.</mixed-citation></ref><ref id="B15"><label>9.</label><mixed-citation xml:lang="ru">Кормен Т. Х., Лазерсон Ч. И., Ривест Р. Л., Штайн К. Алгоритмы: построение и анализ. 3-е изд. М.: Вильямс, 2013. 1323 с.</mixed-citation></ref><ref id="B16"><label>17.</label><mixed-citation xml:lang="ru">Cormen Th. H., Leiserson Ch. E., Rivest R. L., Stein C. Introduction to algorithms. 3rd ed. Cambridge, MA, MIT Press, 2009. 1292 p.</mixed-citation></ref><ref id="B17"><label>10.</label><mixed-citation xml:lang="ru">Рафгарден Т. Совершенный алгоритм. Жадные алгоритмы и динамическое программирование / пер. с англ. А. Логунова. СПб.: Питер, 2020. 256 с.</mixed-citation></ref><ref id="B18"><label>19.</label><mixed-citation xml:lang="ru">Roughgarden T. Algorithms illuminated. Part 3: Greedy algorithms and dynamic programming.</mixed-citation></ref><ref id="B19"><label>20.</label><mixed-citation xml:lang="ru">San Francisco, CA, Soundlikeyourself Publ., 2019. 232 p.</mixed-citation></ref></ref-list>    
  </back>
</article>
